#include "key.h"


void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{
  UNUSED(GPIO_Pin);
  #define Select 3
  #if Select == 1
  if (KEY_Pin == GPIO_Pin)
  {
    HAL_Delay(10);
    if (HAL_GPIO_ReadPin(KEY_GPIO_Port,KEY_Pin) == GPIO_PIN_RESET)
    {
      HAL_GPIO_TogglePin(LED_1_GPIO_Port,LED_1_Pin);
    }
  }
  if (KEY_1_Pin == GPIO_Pin)
  {
    HAL_Delay(10);
    if(HAL_GPIO_ReadPin(KEY_1_GPIO_Port,KEY_1_Pin) == GPIO_PIN_RESET)
    {
      HAL_GPIO_TogglePin(LED_2_GPIO_Port,LED_2_Pin);
    }
  }
  #elif Select == 2
  if (KEY_Pin == GPIO_Pin)
  {
    HAL_Delay(10);
    if(HAL_GPIO_ReadPin(KEY_GPIO_Port,KEY_Pin) == GPIO_PIN_RESET)//按键按下
    {
      Key_flag = ~Key_flag;
    }
  }
  #elif Select == 3
  if (KEY_Pin == GPIO_Pin)
  {
    HAL_Delay(10);
    if(HAL_GPIO_ReadPin(KEY_GPIO_Port,KEY_Pin) == GPIO_PIN_RESET)//按键触发中断经过延时再次读引脚为低电平-->则改变状态
    {
        flow_status = (FLOW_STATUS)((flow_status + 1) % 3);//这行代码很牛<--------改变引脚状态 ~ 状态转移 
    }
  }
  
  #endif

}
